package xyz.csmcool.imoss.service;

import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.util.Map;

/**
 * @author 什锦
 * @Package xyz.csmcool.imoss.service
 * @since 2022/8/5 14:10
 */

public interface FileUploadService {

    /**
     * 处理浏览器文件上传请求
     * @param multipartFile 表单文件
     * @param prefix
     * @return url
     */
    String upload(MultipartFile multipartFile,String prefix);

    /**
     * 处理普通文件上传
     * @param file
     * @param prefix
     * @return url
     */
    String upload(File file,String prefix);


    /**
     * 分片url获取
     * @param filename
     * @param size
     * @return
     */
    Map<String, Object> createMultipartUpload(String filename,Integer size);

    /**
     * 完成上传
     * @param objectName
     * @param uploadId
     * @return
     */
    String completeMultipartUpload(String objectName, String uploadId);
}
